package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import java.util.Date;

/**
 * 著作对象 t_writings
 * 
 * @author ruoyi
 * @date 2020-04-17
 */
public class Writings extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 著作名称 */
    @Excel(name = "著作名称")
    private String writtingsName;

    /** 第一作者 */
    @Excel(name = "第一作者")
    private String firstAuthor;

    /** 其他作者 */
    @Excel(name = "其他作者")
    private String otherAuthor;

    /** 第一作者单位 */
    @Excel(name = "第一作者单位")
    private String firstAuthorUnit;

    /** 字数 */
    @Excel(name = "字数")
    private Long words;

    /** 出版社 */
    @Excel(name = "出版社")
    private String press;

    /** 出版年月 */
    @Excel(name = "出版年月", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pressTime;

    /** 书号 */
    @Excel(name = "书号")
    private String isbn;

    /** 出版社级别（国家级、地方级） */
    @Excel(name = "出版社级别", readConverterExp = "国=家级、地方级")
    private Integer pressLevel;

    /** 单位id */
    @Excel(name = "单位id")
    private Long reportUnitId;

    /** 申报单位 */
    @Excel(name = "申报单位")
    private String reportUnit;

    /** 申报时间 */
    @Excel(name = "申报时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date reportTime;

    /** 出版社级别 */
    @Excel(name = "出版社级别")
    private String pressLevelDesp;

    /** 科室 */
    @Excel(name = "科室")
    private Long departmentId;

    /** 科室 */
    @Excel(name = "科室")
    private String department;

    /** 是否属于创新激励奖 */
    @Excel(name = "是否属于创新激励奖")
    private Integer isInnovate;

    /** 是否包含附件 */
    @Excel(name = "是否包含附件")
    private Integer hasAppendix;

    /** 文档类型 */
    @Excel(name = "文档类型")
    private Integer docType;

    /** 审核状态   1未审核，2审核中，3审核通过 */
    @Excel(name = "审核状态   1未审核，2审核中，3审核通过")
    private Integer auditState;

    /** 创建时间 */
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date gmtTime;

    /** 创建人 */
    @Excel(name = "创建人")
    private Long creator;

    private String searchParam;


    public String getSearchParam() {
        return searchParam;
    }

    public void setSearchParam(String searchParam) {
        this.searchParam = searchParam;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setWrittingsName(String writtingsName) 
    {
        this.writtingsName = writtingsName;
    }

    public String getWrittingsName() 
    {
        return writtingsName;
    }
    public void setFirstAuthor(String firstAuthor) 
    {
        this.firstAuthor = firstAuthor;
    }

    public String getFirstAuthor() 
    {
        return firstAuthor;
    }
    public void setOtherAuthor(String otherAuthor) 
    {
        this.otherAuthor = otherAuthor;
    }

    public String getOtherAuthor() 
    {
        return otherAuthor;
    }
    public void setFirstAuthorUnit(String firstAuthorUnit) 
    {
        this.firstAuthorUnit = firstAuthorUnit;
    }

    public String getFirstAuthorUnit() 
    {
        return firstAuthorUnit;
    }
    public void setWords(Long words) 
    {
        this.words = words;
    }

    public Long getWords() 
    {
        return words;
    }
    public void setPress(String press) 
    {
        this.press = press;
    }

    public String getPress() 
    {
        return press;
    }
    public void setPressTime(Date pressTime) 
    {
        this.pressTime = pressTime;
    }

    public Date getPressTime() 
    {
        return pressTime;
    }
    public void setIsbn(String isbn) 
    {
        this.isbn = isbn;
    }

    public String getIsbn() 
    {
        return isbn;
    }
    public void setPressLevel(Integer pressLevel) 
    {
        this.pressLevel = pressLevel;
    }

    public Integer getPressLevel() 
    {
        return pressLevel;
    }
    public void setReportUnitId(Long reportUnitId) 
    {
        this.reportUnitId = reportUnitId;
    }

    public Long getReportUnitId() 
    {
        return reportUnitId;
    }
    public void setReportUnit(String reportUnit) 
    {
        this.reportUnit = reportUnit;
    }

    public String getReportUnit() 
    {
        return reportUnit;
    }
    public void setReportTime(Date reportTime) 
    {
        this.reportTime = reportTime;
    }

    public Date getReportTime() 
    {
        return reportTime;
    }
    public void setPressLevelDesp(String pressLevelDesp) 
    {
        this.pressLevelDesp = pressLevelDesp;
    }

    public String getPressLevelDesp() 
    {
        return pressLevelDesp;
    }
    public void setDepartmentId(Long departmentId) 
    {
        this.departmentId = departmentId;
    }

    public Long getDepartmentId() 
    {
        return departmentId;
    }
    public void setDepartment(String department) 
    {
        this.department = department;
    }

    public String getDepartment() 
    {
        return department;
    }
    public void setIsInnovate(Integer isInnovate) 
    {
        this.isInnovate = isInnovate;
    }

    public Integer getIsInnovate() 
    {
        return isInnovate;
    }
    public void setHasAppendix(Integer hasAppendix) 
    {
        this.hasAppendix = hasAppendix;
    }

    public Integer getHasAppendix() 
    {
        return hasAppendix;
    }
    public void setDocType(Integer docType) 
    {
        this.docType = docType;
    }

    public Integer getDocType() 
    {
        return docType;
    }
    public void setAuditState(Integer auditState) 
    {
        this.auditState = auditState;
    }

    public Integer getAuditState() 
    {
        return auditState;
    }
    public void setGmtTime(Date gmtTime) 
    {
        this.gmtTime = gmtTime;
    }

    public Date getGmtTime() 
    {
        return gmtTime;
    }
    public void setCreator(Long creator) 
    {
        this.creator = creator;
    }

    public Long getCreator() 
    {
        return creator;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("writtingsName", getWrittingsName())
            .append("firstAuthor", getFirstAuthor())
            .append("otherAuthor", getOtherAuthor())
            .append("firstAuthorUnit", getFirstAuthorUnit())
            .append("words", getWords())
            .append("press", getPress())
            .append("pressTime", getPressTime())
            .append("isbn", getIsbn())
            .append("pressLevel", getPressLevel())
            .append("reportUnitId", getReportUnitId())
            .append("reportUnit", getReportUnit())
            .append("reportTime", getReportTime())
            .append("pressLevelDesp", getPressLevelDesp())
            .append("departmentId", getDepartmentId())
            .append("department", getDepartment())
            .append("isInnovate", getIsInnovate())
            .append("remark", getRemark())
            .append("hasAppendix", getHasAppendix())
            .append("docType", getDocType())
            .append("auditState", getAuditState())
            .append("gmtTime", getGmtTime())
            .append("creator", getCreator())
            .toString();
    }
}
